Currently, variable data printing can be used to print batches of documents where one or more sections of the documents can vary. For example, advertising documents can be personalized with the particular recipient's name. Variable data printing can be used for both printed documents (e.g., documents printed on paper) and digital documents (e.g. in PDF format).
The process of variable data printing can include creation, production and rendering. The creation can include planning, design, programming and/or authoring. Production can include generating target media formats for a particular set of documents. Rendering can include printing on paper or printing (e.g., presenting) the content on a display monitor.
Variable data printing systems can include a composition system and a raster image processor (RIP). Typically, composition systems can receive a variable data printing job for printing. The composition system can process the variable data printing job to, for example, receive a design template, typically from a desktop Design Tool such as Adobe InDesign, with various static and dynamic elements in it, receive data of many different recipients (records) and receive a set of rules which applies to these recipients; then compose elements of the design template based on their graphical attributes, the recipient data and the rules.
The composition system typically divides the variable data printing job into sub-jobs, processes each sub-job, merges all sub-jobs into a merged variable data printing stream. The merged variable data printing stream is typically a stream of pages to print that reflects an order of recipients as specified in the variable data print job. The composition system, after merging, typically transmits the merged variable data printing stream to the RIP. When the RIP receives the data stream, it converts the stream to ready to print page buffers and can transmit the ready to print page buffers to a print engine to generate printed pages. This process can be inefficient because although each of the sub-jobs can be processed concurrently, the composition system typically waits until all the sub-jobs are processed and merged before transmitting the merged job to the RIP. This can add unwanted delay to the time it takes to print a variable data printing job.